package innova.controlador;

import innova.modelo.Asesoria;

import java.util.ArrayList;
import java.util.List;

public class AsesoriaController {

	private List<Asesoria> asesorias;
	
	public AsesoriaController() {
		this.asesorias = new ArrayList<>();
	}
	
	public List<Asesoria> buscar() {
		//Listando todas las asesorias
		return asesorias;
	}
	
	public List<Asesoria> buscar(Asesoria asesoria) {
		//Creando un listado de resultado
		List<Asesoria> resultado = new ArrayList<>();
		
		//Recorriendo las asesorias
		for(Asesoria item : asesorias) {
			//Verificando si es igual por el codigo
			if(item.getIdAsesoria() == asesoria.getIdAsesoria()) {
				//Asignando el item al resultado
				resultado.add(item);
			}
			else if(item.getObservacionAsesoria().contains(asesoria.getObservacionAsesoria())){
				//Asignando el item al resultado
				resultado.add(item);
			}
			else if(item.getCalificacionAsesoria().contains(asesoria.getCalificacionAsesoria())){
				//Asignando el item al resultado
				resultado.add(item);
			}
		}
		
		//Devolviendo el resultado
		return resultado;
	}
	
	public void eliminar(Asesoria asesoria) {
		//Eliminando la asesoria de la lista
		asesorias.remove(asesoria);
	}
	
	public void registrar(Asesoria asesoria) {
		//Guardando en el listado
		asesorias.add(asesoria);
	}
	
	public int getCodigoAutomatico() {
		//Contando la cantidad de asesorias;
		int codigoAutomatico = 0;
		
		if(asesorias == null) {
			//Asignando el valor
			codigoAutomatico = 1;
		} else {
			//Obteniendo la cantidad
			int cantidad = asesorias.size();
			codigoAutomatico = cantidad + 1;
		}
		
		return codigoAutomatico;
	}
	
}
